onmissinglicensefile

SoftwareShield ClientProtector COM Component > ClientProtector (SSCProtector) Reference > OnMissingLicenseFile

## OnMissingLicenseFile

OnMissingLicenseFile is an event function of the ClientProtector dispatch interface. This event will fire immediately upon StartUp if the Main License File cannot be found in the location specified. Your application can respond to this event by implementing it and subscribing to the event interface, providing the actual location of the file (if possible).

###### Syntax

void OnMissingLicenseFile ( BSTR ExpectedLFNamePath, BSTR * ActualLFNamePath );

###### Parameters

ExpectedLFNamePath

[IN] This is a wide string containing the fully qualified file name and path where the Main License File was expected, but not found. This fully qualified path is constructed by the ClientProtector based on the MainLicenseFileName parameter you pass to the StartUp function.

ActualLFNamePath

[OUT] This is a (pointer to a) wide character string (of any length) that you return to the ClientProtector when responding to this event. It must be set to the fully qualified path file name and path of the actual name and location of the missing license file.

###### Remarks

OnMissingLicenseFile is an event function of the ClientProtector dispatch interface. This event will fire immediately upon StartUp if the Main License File cannot be found in the location specified. Your application can respond to this event by implementing it and subscribing to the event interface, providing the actual location of the file (if possible).

In virtually every case, you should implement this event handler function. Typically, within the scope of the event, you will prompt the user that the Main License File is missing and ask them if they wish to browse for it. If they choose to, you would present them with a common Open File Dialog and allow them to browse the hard drive for it. You may choose to initialize the Open File Dialog with the path and file name of the expected location.

If the user finds the missing license file with your dialog, you should send it back to the ClientProtector in the ActualLFNamePath parameter.

Note that the ActualLFNamePath parameter must contain the fully qualified file name and path of the located file.

The located file can potentially be any name. It does not have to match in name with the ExpectedLFNamePath parameter.

Note that the file indicated by the ActualLFNamePath parameter will be renamed and moved to the ExpectedLFNamePath location immediately after the event handler returns to the ClientProtector.

If the file indicated is in fact the Main License File, processing will continue as normal. However if you do return a file name and path and the ClientProtector is unable to load it for any reason, processing will stop as through the file was either not found or was corrupted. See the SoftwareShield ClientProtector Control Flow Charts for more information about where this event fires and how it handles the logic around loading the Main License File.

###### Return Value

Your event handler does not need to return a value.

###### Function Information

Exposed By Interface: | "ISSCProtector"
Exposed In COM Server Binaries: | "SSCProt.dll" and "SSCProtD.dll"